package model

import (
	"onvif_server/internal/model/field"
)

type Camera struct {
	ID        int             `gorm:"column:id;primaryKey" json:"id"`
	DeviceId  string          `gorm:"column:device_id;index" json:"device_id"`
	Alias     string          `gorm:"column:alias" json:"alias"`
	Online    bool            `gorm:"column:online" json:"online"`
	Username  string          `gorm:"column:username" json:"username"`
	Password  string          `gorm:"column:password" json:"password"`
	Record    bool            `gorm:"column:record" json:"record"`
	RtspUri   string          `gorm:"column:rtsp_uri" json:"rtsp_uri"`
	RtspUri1  string          `gorm:"column:rtsp_uri1" json:"rtsp_uri1"`
	RtspUri2  string          `gorm:"column:rtsp_uri2" json:"rtsp_uri2"`
	Filepath  string          `gorm:"column:filepath" json:"filepath"`
	Addx      string          `gorm:"column:addx;comment:onvif地址" json:"addx"`
	Key       string          `gorm:"column:key" json:"key"`
	UUID      string          `gorm:"column:uuid" json:"uuid"`
	Point     field.Point     `gorm:"column:point" json:"point"`
	Build     string          `gorm:"column:build" json:"build"`
	Storey    string          `gorm:"column:storey" json:"storey"`
	Location  string          `gorm:"column:location" json:"location"`
	Brand     string          `gorm:"column:brand" json:"brand"`       // 摄像头品牌
	Model     string          `gorm:"column:model" json:"model"`       // 摄像头类型
	Height    int             `gorm:"column:height" json:"height"`     // 视频高度
	Width     int             `gorm:"column:width" json:"width"`       // 视频宽度
	SnapUrl   string          `gorm:"column:snap_url" json:"snap_url"` // 抓拍地址
	CreatedAt field.LocalTime `gorm:"column:created_at" json:"created_at"`
	UpdatedAt field.LocalTime `gorm:"column:updated_at" json:"updated_at"`
}
